﻿<UserControl x:Class="AudioEffectBox.EffectBox"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    d:DesignHeight="300" d:DesignWidth="400">
    
    <Grid x:Name="LayoutRoot">
        <Grid.ColumnDefinitions>
            <ColumnDefinition/>
            <ColumnDefinition/>
            <ColumnDefinition/>
            <ColumnDefinition/>
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="30"/>
            <RowDefinition Height="Auto"/>            
        </Grid.RowDefinitions>
        
        <TextBlock Text="Reverberation" TextAlignment="Center" Grid.Column="1" Grid.Row="0"/>
        <TextBlock Text="Echo" TextAlignment="Center" Grid.Column="2" Grid.Row="0"/>
        <TextBlock Text="Modulation" TextAlignment="Center" Grid.Column="0" Grid.Row="0"/>
        <TextBlock Text="Stereo Balancer" TextAlignment="Center" Grid.Column="3" Grid.Row="0"/>
        
        <StackPanel Orientation="Vertical" Grid.Column="1" Grid.Row="1">
            <CheckBox Content="Enable" IsChecked="{Binding IsReverberationEnabled,Mode=TwoWay}"/>
            <Grid Margin="10">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto"/>
                    <ColumnDefinition/>
                </Grid.ColumnDefinitions>
                <Grid.RowDefinitions>
                    <RowDefinition/>
                    <RowDefinition/>
                </Grid.RowDefinitions>
                <TextBlock Text="Delay" Grid.Column="0" Grid.Row="0" Margin="5"/>
                <Slider Orientation="Horizontal" Grid.Column="1" Grid.Row="0" 
                        Minimum="10" Maximum="200" Value="{Binding ReverberationDelay,Mode=TwoWay}"/>
                <TextBlock Text="Percentage" Grid.Column="0" Grid.Row="1" Margin="5"/>
                <Slider Orientation="Horizontal" Grid.Column="1" Grid.Row="1" 
                        Minimum="0" Maximum="95" Value="{Binding ReverberationPercentage,Mode=TwoWay}"/>
            </Grid>
        </StackPanel>
        <StackPanel Orientation="Vertical" Grid.Column="2" Grid.Row="1">
            <CheckBox Content="Enable" IsChecked="{Binding IsEchoEnabled,Mode=TwoWay}"/>
            <Grid Margin="10">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto"/>
                    <ColumnDefinition/>
                </Grid.ColumnDefinitions>
                <Grid.RowDefinitions>
                    <RowDefinition/>
                    <RowDefinition/>
                </Grid.RowDefinitions>
                <TextBlock Text="Delay" Grid.Column="0" Grid.Row="0" Margin="5"/>
                <Slider Orientation="Horizontal" Grid.Column="1" Grid.Row="0" Minimum="0" Maximum="15" Value="{Binding EchoDelay,Mode=TwoWay}"/>
                <TextBlock Text="Percentage" Grid.Column="0" Grid.Row="1" Margin="5"/>
                <Slider Orientation="Horizontal" Grid.Column="1" Grid.Row="1" Minimum="0" Maximum="95" Value="{Binding EchoPercentage,Mode=TwoWay}"/>
            </Grid>
        </StackPanel>
        <StackPanel Orientation="Vertical" Grid.Column="0" Grid.Row="1">
            <CheckBox Content="Enable" IsChecked="{Binding IsModulationEnabled,Mode=TwoWay}"/>
            <Grid Margin="10">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto"/>
                    <ColumnDefinition/>                    
                </Grid.ColumnDefinitions>
                <Grid.RowDefinitions>
                    <RowDefinition/>
                    <RowDefinition/>
                </Grid.RowDefinitions>                
                <TextBlock Text="Modulation Speed" Grid.Column="0" Grid.Row="0" Margin="5"/>
                <Slider Orientation="Horizontal" Grid.Column="1" Grid.Row="0" Minimum="-10" Maximum="10" Value="{Binding ModulationSpeed,Mode=TwoWay}"/>
                <TextBlock Text="Modulation Level" Grid.Column="0" Grid.Row="1" Margin="5"/>
                <Slider Orientation="Horizontal" Grid.Column="1" Grid.Row="1" Minimum="0" Maximum="100" Value="{Binding ModulationLevel,Mode=TwoWay}"/>
            </Grid>

        </StackPanel>
        <StackPanel Orientation="Vertical" Grid.Column="3" Grid.Row="1">
            <CheckBox Content="Enable" IsChecked="{Binding IsBalancerEnabled,Mode=TwoWay}"/>
            <Grid Margin="10">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto"/>
                    <ColumnDefinition/>
                </Grid.ColumnDefinitions>
                <Grid.RowDefinitions>
                    <RowDefinition/>                    
                </Grid.RowDefinitions>              
                <TextBlock Text="Balancer Speed" Grid.Column="0" Grid.Row="0" Margin="5"/>
                <Slider Orientation="Horizontal" Grid.Column="1" Grid.Row="0" Minimum="-2000" Maximum="-50" Value="{Binding BalancerSpeed,Mode=TwoWay}"/>
                
            </Grid>

        </StackPanel>
    </Grid>
</UserControl>
